#ifdef __IAR_SYSTEMS_ICC
#ifndef __SMLFIFO
#include <sml_fifo.h>
#endif

extern volatile SFIFOHeader ASTAR0InFIFO, ASTAR1InFIFO, ASTAR2InFIFO;
extern volatile unsigned char ASTAR0Flags, ASTAR1Flags, ASTAR2Flags;

extern void ASTAR0Init(unsigned short UBR, unsigned char UMCTL, unsigned short in_select);
extern int  ASTAR0RecvChr(void);
extern int  ASTAR0RecvStr(char *str, unsigned short sz);
extern int  ASTAR0RecvBlk(unsigned char *buf, unsigned short sz);

extern void ASTAR1Init(unsigned short UBR, unsigned char UMCTL, unsigned short in_select);
extern int  ASTAR1RecvChr(void);
extern int  ASTAR1RecvStr(char *str, unsigned short sz);
extern int  ASTAR1RecvBlk(unsigned char *buf, unsigned short sz);

extern void ASTAR2Init(unsigned short UBR, unsigned char UMCTL, unsigned short in_select);
extern int  ASTAR2RecvChr(void);
extern int  ASTAR2RecvStr(char *str, unsigned short sz);
extern int  ASTAR2RecvBlk(unsigned char *buf, unsigned short sz);

#else
            EXTERN  ASTAR0InFIFO, ASTAR0Flags
            EXTERN  ASTAR0INIT, ASTAR0INT
            EXTERN  ASTAR0RecvChr
            EXTERN  ASTAR0RecvStr, ASTAR0RecvBlk
            
            EXTERN  ASTAR1InFIFO, ASTAR1Flags
            EXTERN  ASTAR1INIT, ASTAR1INT
            EXTERN  ASTAR1RecvChr
            EXTERN  ASTAR1RecvStr, ASTAR0RecvBlk

            EXTERN  ASTAR2InFIFO, ASTAR2Flags
            EXTERN  ASTAR2INIT, ASTAR2INT
            EXTERN  ASTAR2RecvChr
            EXTERN  ASTAR2RecvStr, ASTAR0RecvBlk
            
#endif
            
